kbuild: Add build salt to the kernel and modules
authorLaura Abbott <labbott@redhat.com>
Fri, 6 Jul 2018 00:49:37 +0000 (17:49 -0700)
committerSalvatore Bonaccorso <carnil@debian.org>
Fri, 20 Jul 2018 21:08:27 +0000 (22:08 +0100)
commitc057c014bd8a9c1e6e6392dd9d834e94d53f07f9
tree98d3a4c6622d1b14d7b22feaf30a6c41577a1d43
parent03ebb38c911ec805a663ec1d52dc0e1095415233
kbuild: Add build salt to the kernel and modules

In Fedora, the debug information is packaged separately (foo-debuginfo) and
can be installed separately. There's been a long standing issue where only
one version of a debuginfo info package can be installed at a time. There's
been an effort for Fedora for parallel debuginfo to rectify this problem.

Part of the requirement to allow parallel debuginfo to work is that build ids
are unique between builds. The existing upstream rpm implementation ensures
this by re-calculating the build-id using the version and release as a
seed. This doesn't work 100% for the kernel because of the vDSO which is
its own binary and doesn't get updated when embedded.

Fix this by adding some data in an ELF note for both the kernel and modules.
The data is controlled via a Kconfig option so distributions can set it
to an appropriate value to ensure uniqueness between builds.

Suggested-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: Laura Abbott <labbott@redhat.com>
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Gbp-Pq: Topic features/all
Gbp-Pq: Name kbuild-add-build-salt-to-the-kernel-and-modules.patch
include/linux/build-salt.h [new file with mode: 0644]
init/Kconfig
init/version.c
scripts/mod/modpost.c